package cqrtplm.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hustcad.plm.pdm.enumeration.model.dto.EnumerationValueDTO;
import com.hustcad.plm.pdm.enumeration.model.vo.EnumerationItemHandleVO;
import com.ty.basic.entity.enumeration.EnumerationDefDO;
import cqrtplm.dto.CreateChildEnumDTO;
import cqrtplm.entity.TyEnumerationdefDO;
import org.springframework.web.multipart.MultipartFile;

import java.math.BigInteger;
import java.util.List;

/**
* @author 博
* @description 针对表【ty_enumerationdef】的数据库操作Service
* @createDate 2025-06-05 19:47:06
*/
public interface TyEnumerationdefService extends IService<TyEnumerationdefDO> {

    TyEnumerationdefDO selectByOid(BigInteger defoid);

    String selectDisplayNameByOid(BigInteger defoid);

    void batchImportEnum(MultipartFile file);

    List<TyEnumerationdefDO> selectEnumByName(String name, String description);

    EnumerationDefDO createChildEnum(CreateChildEnumDTO dto);

    Object getTYEnumByOid(String defoid);

    void checkAttrIfBindingEnum(BigInteger classOid, String classType);

    List<EnumerationValueDTO> selectEnumByPid(BigInteger pid);

    void updateEnumItem(List<EnumerationItemHandleVO> enumItemVOS, BigInteger parentEnumOid, BigInteger attrLinkId, String childEnumOid,boolean isParent);
}
